Ethernet is the predominant network technology in the local area network (LAN) market, driven by its relatively low cost in comparison with other competeing technologies. Although technologies such as ATM (Asynchronous Transfer Mode) have been proposed as the network technology for support of multimedia to desktop, the large installed base of 10Mbps Ethernet networks, the rapid proliferation of of 10/100Mbps Ethernet (Fast Ethernet) and the emerging Gigabit Ethernet technologies suggest that Ethernet will be the underlying technology for supporting real-time, continuous media services to the desktop. With increasing interest in IP (Internet Protocol) telephony services, first by the information technology sector and now by telecommunications companies, demand for commercial products supporting continuous media to the desktop is to be expected.
Ethernet has evolved as a shared media technology without support for QoS facilities that are available on ATM networks, i.e. resource guarantees for services through bandwidth and buffer allocation. Recently, however, IEEE 802.1 Higher Layer LAN Protocols Working Group has introduced the IEEE 802.1p specification where switches and hubs can prioritize traffic classes. Implementation of 802.1p requires extensions to the Ethernet frame format in order to support priority tagging for differentiating between different traffic classes according to some set policy within the switch. This, together with mechanisms which allow the implementation of Virtual Bridged LANs (VLANs), is discussed in the IEEE 802.1Q specification. Briefly, hosts can indicate the priority to be afforded to data communications by indicating a user-priority value in a user-priority field of the data packet, or frame, format. This user-priority is utilized by the forwarding process of the switch which is responsible for forwarding received frames across the switch onto the appropriate outbound LAN segment. Specifically, the user-priority value is mapped to one of a number of traffic classes defined in the switch. The requirements for forwarding a received frame across the switch are indicated to the forwarding process by the traffic class, the forwarding process selecting frames for forwarding in an order dependent on the traffic class. As a simple example, a switch may support eight traffic classes which correspond directly to eight user-priority values, and the forwarding process may forward all received frames in the highest traffic class before forwarding frames in the next-highest traffic class, and so on down through the traffic classes. Clearly, the architectures of switches and network interface cards must be modified for implementation of this system.
The IEEE specifications referenced above describe operation of the prioritized traffic class system at the network level. The IETF (Internet Engineering Task Force) Internet Draft entitled “A Framework for Integrated Services Over Shared and Switched IEEE 802 LAN Technologies”, (draft-ietf-issll-is802-framework-07.txt), June 1999 discusses mechanisms for supporting QoS at the IP level and how these might interface with existing Ethernet systems.
While the prioritized traffic class system provides a basic mechanism for supporting different quality of service levels, the system does not provide any QoS guarantees. In particular, if there are hosts deliberately or inadvertently generating traffic in a manner that undermines the policies in place for allocating network bandwidth between different traffic classes, then QoS cannot be guaranteed. For example, if buffers at a switch port become congested, then the MAC (Media Access Control) entity at the port will jam the connected LAN segment, blocking transmissions from all hosts on that segment via the standard CSMA/CD (Carrier Sense Multiple Access with Collision Detection) mechanism. Thus, hosts transmitting high-priority data can be penalized equally with hosts transmitting low-priority data, so that QoS cannot be guaranteed even for high-priority data.
According to a first aspect of the present invention there is provided a method for managing data communications between hosts of a switched Ethernet network, the method comprising:
assigning hosts to logical groups of hosts such that the hosts participating in a data communication are assigned to the same group;
in a switch of the network, associating each said group with a service class indicative of requirements for forwarding data across the switch for data communications between hosts in the group, and forwarding received data across the switch in a manner dependent on the service class of the group to which hosts participating in the data communication are assigned; and
in the switch, disabling data communications between hosts in one or more of said groups when required to satisfy the forwarding requirements for at least one said service class